.TH "Zebulon::GPS::DGPS" 3 "13 Oct 2009" "Version 2" "zebulon" \" -*- nroff -*-
.ad l
.nh
.SH NAME
Zebulon::GPS::DGPS \- 
.PP
Simple Differential \fBGPS\fP class which reads incomming \fBNMEA\fP messages from a \fBGPS\fP device over a serial connection.  

.SH SYNOPSIS
.br
.PP
.PP
\fC#include <dgps.h>\fP
.SS "Classes"

.in +1c
.ti -1c
.RI "class \fBCallback\fP"
.br
.RI "\fI\fBCallback\fP class used to register for message events. \fP"
.in -1c
.SS "Public Types"

.in +1c
.ti -1c
.RI "typedef std::set< NMEA::Message::Type > \fBTypeSet\fP"
.br
.ti -1c
.RI "typedef std::list< \fBNMEA::Message\fP * > \fBMessageList\fP"
.br
.ti -1c
.RI "typedef std::vector< \fBNMEA::Message\fP * > \fBMessageVector\fP"
.br
.ti -1c
.RI "typedef std::set< \fBDGPS::Callback\fP * > \fBCallbackSet\fP"
.br
.in -1c
.SS "Public Member Functions"

.in +1c
.ti -1c
.RI "int \fBInitialize\fP (const std::string &xml)"
.br
.ti -1c
.RI "int \fBInitialize\fP (const std::string &port, const unsigned int ibaud, const bool tryOtherBauds=true, const unsigned int timout=1000)"
.br
.ti -1c
.RI "int \fBShutdown\fP ()"
.br
.ti -1c
.RI "int \fBRegisterCallback\fP (\fBDGPS::Callback\fP *cb)"
.br
.ti -1c
.RI "int \fBRemoveCallback\fP (\fBDGPS::Callback\fP *cb)"
.br
.ti -1c
.RI "int \fBSetMessageTypes\fP (const DGPS::TypeSet types)"
.br
.ti -1c
.RI "int \fBAddMessageType\fP (const NMEA::Message::Type type)"
.br
.ti -1c
.RI "int \fBRemoveMessageType\fP (const NMEA::Message::Type type)"
.br
.ti -1c
.RI "int \fBSetMaximumListSize\fP (const unsigned int size)"
.br
.ti -1c
.RI "virtual void \fBProcessMessage\fP (const \fBNMEA::Message\fP *msg)"
.br
.ti -1c
.RI "bool \fBIsConnected\fP () const "
.br
.ti -1c
.RI "bool \fBHaveSignal\fP () const "
.br
.ti -1c
.RI "bool \fBLostSignal\fP () const "
.br
.ti -1c
.RI "unsigned int \fBGetMaximumListSize\fP () const "
.br
.ti -1c
.RI "\fBNMEA::Message\fP * \fBGetLastMessage\fP () const "
.br
.ti -1c
.RI "DGPS::MessageVector \fBGetMessages\fP (const unsigned int num=1) const "
.br
.in -1c
.SS "Static Protected Member Functions"

.in +1c
.ti -1c
.RI "static void \fBSerialThread\fP (void *args)"
.br
.in -1c
.SS "Protected Attributes"

.in +1c
.ti -1c
.RI "volatile bool \fBmConnectedFlag\fP"
.br
.RI "\fIConnected and receiving \fBNMEA\fP messages. \fP"
.ti -1c
.RI "volatile bool \fBmHaveSignalFlag\fP"
.br
.RI "\fIFlag used to check for valid \fBGPS\fP data. \fP"
.ti -1c
.RI "volatile bool \fBmRunningFlag\fP"
.br
.RI "\fIThread is running? \fP"
.ti -1c
.RI "volatile unsigned int \fBmListSize\fP"
.br
.RI "\fIMaximum number of messages to store in list. \fP"
.ti -1c
.RI "CxUtils::Mutex \fBmSerialMutex\fP"
.br
.RI "\fIMutex for data protection in thread. \fP"
.ti -1c
.RI "CxUtils::Mutex \fBmCallbackMutex\fP"
.br
.RI "\fIMutex for callbacks. \fP"
.ti -1c
.RI "CxUtils::Serial \fBmSerialPort\fP"
.br
.RI "\fIConnects to the serial port for receiving. \fP"
.ti -1c
.RI "CxUtils::Thread \fBmSerialThread\fP"
.br
.RI "\fIThread for continuously receiving \fBNMEA\fP messages. \fP"
.ti -1c
.RI "CxUtils::Wgs \fBmPosition\fP"
.br
.RI "\fICurrent \fBGPS\fP position. \fP"
.ti -1c
.RI "TypeSet \fBmMessageTypes\fP"
.br
.RI "\fITypes of messages to listen for (all others ignored). \fP"
.ti -1c
.RI "MessageList \fBmMessages\fP"
.br
.RI "\fIList of all messages from \fBGPS\fP. \fP"
.ti -1c
.RI "CallbackSet \fBmCallbacks\fP"
.br
.RI "\fISet of all callbacks to run when message received. \fP"
.in -1c
.SH "Detailed Description"
.PP 
Simple Differential \fBGPS\fP class which reads incomming \fBNMEA\fP messages from a \fBGPS\fP device over a serial connection. 

It is possible to configure this interface to only listen for specific types of messages. By default it only listens for GPGGA \fBNMEA\fP messages, so use the AddMessageType method to add more. 

.SH "Author"
.PP 
Generated automatically by Doxygen for zebulon from the source code.
